package net.servir.capacidades.web.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import net.servir.capacidades.model.CapValidacion;
import net.servir.capacidades.model.ServicioCivil;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class RecuperarClaveController {
	@RequestMapping("/recuperarClave.htm")
	public @ModelAttribute("capValidacion")
	CapValidacion capValidacion(HttpServletRequest request, HttpServletResponse response) {
		CapValidacion obj = new CapValidacion();
	
		ServicioCivil scivil = new ServicioCivil();
		HttpSession session = request.getSession();
		String cod_session =session.getId();
		obj.setCod_session(cod_session);
		obj.setCaps();
		Integer numIntentos = 0;
		String mensaje = "";

		session.setAttribute("ref", session.getId().toString());
		session.setAttribute("finalizar", "0");
		session.setAttribute("idsesion_serv", session.getId().toString());
		session.setAttribute("captcha_serv", obj.getCap1() + obj.getCap2());
		session.setAttribute("dni", scivil.getDni());

		if(session.getAttribute("mensajes") != null)
		{
			mensaje = session.getAttribute("mensaje").toString();
		}
		
		if(session.getAttribute("num_intentos") != null)
		{
			numIntentos = Integer.parseInt(session.getAttribute("num_intentos").toString());
			numIntentos += 1;
		}
		
		if (numIntentos > 3)
			mensaje = "Ha excedido el número máximo de intentos de recuperación de clave, contacte con diagnostico@servir.gob.pe";
		
		session.setAttribute("num_intentos", numIntentos.toString());
		obj.setMensaje(mensaje);
		obj.setNumIntentos(numIntentos);
		return obj;
	}	 
}
